/*
 *MIT License
 *Copyright (c) 2021 fullset
 *@ClassName SysRoleService
 *@date 2021/7/10 10:06
 *@author: pangps
 *@Description TODO
 */
package com.fs.base.service;

import com.fs.orm.entity.SysRole;
import com.fs.orm.vo.form.SysRoleForm;
import com.github.pagehelper.PageInfo;

import java.util.List;
import java.util.Map;

public interface SysRoleService {

    SysRoleForm addRole(SysRoleForm sysRoleForm) throws Exception;

    SysRoleForm editRole(SysRoleForm sysRoleForm);

    /**
     * 获取全部角色
     * @return
     */
    List<SysRole> getAll();

    /**
     * 角色表格
     * @param params
     * @return
     */
    PageInfo<SysRole> getLayTable(Map<String, Object> params);

    /**
     * 初始化角色表单
     * @return
     */
    SysRoleForm initForm();

    /**
     * 编辑角色表单
     * @return
     */
    SysRoleForm editForm(Long id);

    /**
     * 逻辑删除角色
     * @param id 角色id
     * @return
     */
    boolean logicalDeleteById(String id);

    /**
     * 批量删除选中的角色id
     * @param ids
     * @return
     */
    boolean batchDel(String ids);
}
